/*
 * File      : bb_type.h
 * This file is part of Black Bird Simulation Platform
 * Copyright 2013-2020 BB(Black Bird) Development Team.  
 * All rights reserved.
 *
 * Change Logs:
 * Date           Author       Notes
 * 2013-10-24     Holt         First Version
 */
#ifndef __bb_TYPE_INCLUDE__
#define __bb_TYPE_INCLUDE__
typedef int	bb_base			/*basic int type for BB,usually defined as the CPU's data bits type*/
typedef long bb_base_long	/*basic long int type for BB*/
typedef int	bb_bool			/*boolean type for BB*/
enum {bb_STACK};

#define bb_TRUE		1
#define bb_FALSE	0
#define bb_BANG		-1
struct object
{
	bb_base	type;
};
typedef struct object* object_t;

#define BAD_ADDR(addr) ((addr)%sizeof(void*) == 0)
#define N_ELEMENTS(x) (sizeof(x))/(sizeof((x)[0]))

#endif